var uid = 0;
export default class Dep {
  constructor() {
    // 放的是watcher的实例
    this.id = uid++;
    this.subs = [];
  }
  // 添加订阅
  addSub(sub) {
    this.subs.push(sub);
  }
  // 添加依赖
  depend(){
    // Dep.target 就是 一个我们自己指定的全局的位置，只要全局唯一即可
    if(Dep.target){
      this.addSub(Dep.target);
    }else{

    }
  }
  // 通知更新
  notify(val) {
    
    // 浅克隆
    const subs = this.subs.slice();
    for (let i = 0, l = subs.length; i < l; i++) {
      subs[i].update();
    }
  }
}